JEDEC (Joint Electron Device Engineering Council) promulgates several standards including the UFS (Universal Flash Storage) standard for high performance mobile storage devices. The UFS has adopted MIPI (Mobile Industry Processor Interface) for data transfer in mobile systems. The UFS is a standard to provide high-performance serial interface for moving data between a host and storage devices.
For example, FIG. 1A illustrates a UFS host 110 that communicates with a UFS device 170 over a link 150. The UFS uses Unipro (Unified Protocol) stack which defines a layered protocol for interconnecting devices within mobile systems. The protocol layers covered by Unipro include the transport layer (L4), the network layer (L3), the data link layer (L2) and the PHY adapter layer (L1.5). These are represented as a Unipro interface 122 on the UFS host 110 and as a Unipro interface 172 on the UFS device 170. M-PHY specifies a physical layer (L1) technique for communication, which are represented as an M-PHY interfaces 124 on the UFS host 110 and as an M-PHY interface 174 on the UFS storage device 170. The PHY adapter layer (L1.5) on the Unipro stack hides the differences among the different physical layer options so that the Unipro can be physical layer agnostic.
A topic of interest regarding storage devices involves daisy-chaining UFS devices so that multiple UFS devices can be connected to the UFS host with a single UFS port. For example, FIG. 1B illustrates first and second UFS devices 170-1, 170-2 daisy-chained to the UFS host 110. The first UFS device 170-1 is point-to-point connected to the UFS host 110 over a first link 150-1. The second UFS device 170-2 is point-to-point connected to the first UFS device 170-1 over a second link 150-2.
The first UFS device 170-1 is illustrated as having a Unipro interface 172U and an M-PHY interface 174U for communication over the first link 150-1. The letter ‘U’ is used to indicate these are the interfaces on an upstream side of the first UFS device 170-1. The first UFS device 170-1 is also illustrated as having a Unipro interface 172D and an M-PHY interface 174D for communication over the second link 150-2. The letter ‘D’ is used to indicate these are the interfaces on a downlink side of the first UFS device 170-1. The second UFS device 170-2 is illustrated as having a Unipro interface 172 and an M-PHY interface 174 for communication over the second link 150-2.
Unipro currently supports point-to-point links. In FIG. 1B, this means that the UFS host 110 can directly control the first link 150-1, e.g., through link control commands. However, the UFS host 110 cannot directly control the second link 150-2 between the first and second UFS devices 170-1, 170-2 since the second UFS device 170-2 is not point-to-point connected to the UFS host 110. Instead, the UFS host 110 relies upon the first UFS device 170-1 to control the second link 150-2 on its behalf through issuing normal data/management (D/M) commands.
One disadvantage is that the conventional UFS link control is not consistent for the different links of the daisy-chain. On the host side, device drivers must be written to implement different mechanisms to control the different links. As such, the device drivers can become complex and more prone to errors.